package org.dromara.system.domain.vo;

import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.dromara.system.domain.SimCard;

import java.io.Serial;
import java.io.Serializable;
import java.util.Date;


/**
 * 流量卡视图对象 sim_card
 *
 * @author Lion Li
 * @date 2025-08-15
 */
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = SimCard.class)
public class SimCardVo implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     *
     */
    @ExcelProperty(value = "")
    private Long id;

    /**
     *
     */
    @ExcelProperty(value = "")
    private Long userId;

    //当前用户id
    private Long currentUserId;

    //需要续期次数
    private Integer renewNum;

    //已经续期次数
    private Integer alreadyRenewNum;


    /**
     * SIM卡号
     */
    @ExcelProperty(value = "ICCID")
    private String iccId;

    /**
     * 手机号
     */
    @ExcelProperty(value = "手机号")
    private String number;

    /**
     * 状态
     */
    @ExcelProperty(value = "状态")
    private String status;

    /**
     * 套餐
     */
    @ExcelProperty(value = "套餐")
    private String packageId;

    /**
     * 开卡时间
     */
    @ExcelProperty(value = "开卡时间")
    private Date createTs;

    /**
     * 激活时间
     */
    @ExcelProperty(value = "激活时间")
    private Date activeTs;

    /**
     * 销户时间
     */
    @ExcelProperty(value = " 销户时间")
    private Date cancelTs;

    /**
     * 停机时间
     * 停机时间
     */
    @ExcelProperty(value = "停机时间")
    private Date stopTs;

    /**
     * 服务到期时间
     */
    @ExcelProperty(value = "服务到期时间")
    private Date expireTs;

    /**
     * 流量总量
     */
    @ExcelProperty(value = "流量总量")
    private Integer totalInternetTraffic;

    /**
     * 已使用总流量
     */
    @ExcelProperty(value = "已使用总流量")
    private Integer userInternetTraffic;

    /**
     * 剩余总量
     */
    @ExcelProperty(value = "剩余总量")
    private Integer surplusInternetTraffic;

    /**
     *
     */
    @ExcelProperty(value = "")
    private String validLength;

    /**
     *
     */
    @ExcelProperty(value = "")
    private String validLengthZ;

    /**
     * 1已激活 0未激活
     */
    @ExcelProperty(value = "1已激活 0未激活")
    private Integer isActive;

    /**
     * 备注
     */
    @ExcelProperty(value = "备注")
    private String remark;

    //公司名称
    @ExcelProperty(value = "支付公司名称")
    private String company;

    //sn
    @ExcelProperty(value = "SN")
    private String sn;


    private String currentUserName;

    private String currentNickName;

    private String currentRealName;

    private Date createTime;

}
